#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include "api/api.h"

int main(int argc, char** argv)
{
	printf("Receiving transmission!\n");
	int port_fd = llopen(TTYS0, RECEIVER);
	char buf[DATA_SIZE];
	//TODO: mudar nome para nome do ficheiro
	//llread do primeiro pacote de inicio de transmissao
	llread(port_fd, buf);
	char filepath[DATA_SIZE] = "output/";
	int file_fd = open(strcat(filepath,buf), O_WRONLY | O_CREAT, 0740);
	int bytes_read = -1;
	
	
	while(bytes_read != 0)
	{
		bytes_read = llread(port_fd, buf);
		if (bytes_read == 0) //received final packet with no data
			break;
		write(file_fd, &buf, bytes_read);
	}
	
	close(file_fd);
	llclose(port_fd);
	printf("EOF\n");
	
	return 0;
}
